In a typical cloud-based computing environment (e.g., a datacenter), multiple compute nodes execute workloads on behalf of customers. As the workloads are performed, the components of the compute nodes, such as the processors and memory, generate heat. Excess heat can lead to erroneous behavior of the components, increased wear (e.g., a shortened life span), and/or a protective shutdown of one or more of the compute nodes. As a result of a workload assignment, a compute node may become heavily burdened, producing more than a target amount of heat (e.g., a temperature in excess of a target temperature). Meanwhile, other managed nodes may be underutilized and produce far less than the target amount of heat. As such, the components on the overburdened compute node may be unnecessarily heated in view of the underutilized capacity of the other compute nodes in the environment.
Further, as workloads are performed, the workloads may exhibit different phases of resource utilization (e.g., an initially low processor utilization followed by a high processor utilization). Accordingly, while a particular assignment of workloads among the set of compute nodes may have initially resulted in heat production that satisfied a target temperature, a change in the resource utilization phases may result in excess heat production in one or more of the compute nodes. As such, the management of heat production in a cloud-based computing environment is difficult.